package net.togogo.egouweb1238.core.service.product;

import java.util.List;

import net.togogo.egouweb1238.common.page.Pagination;
import net.togogo.egouweb1238.core.domain.product.Sku;
import net.togogo.egouweb1238.core.query.product.SkuQuery;


/**
 * 
 * @author stone
 */
public interface ISkuService {
	/**
	 * 基本插入
	 * 
	 * @return
	 */
	public Integer addSku(Sku sku);

	/**
	 * 根据主键查询
	 */
	public Sku getSkuById(Integer id);

	/**
	 * 根据主键批量查询
	 */
	public List<Sku> getSkusByIds(List<Integer> idList);

	/**
	 * 根据主键删除
	 * 
	 * @return
	 */
	public Integer deleteById(Integer id);

	/**
	 * 根据主键批量删除
	 * 
	 * @return
	 */
	public Integer deleteByIds(List<Integer> idList);

	/**
	 * 根据主键更新
	 * 
	 * @return
	 */
	public Integer updateSkuById(Sku sku);

	/**
	 * 根据条件查询分页查询
	 * 
	 * @param skuQuery
	 *            查询条件
	 * @return
	 */
	public Pagination getSkuListWithPage(SkuQuery skuQuery);

	/**
	 * 根据条件查询
	 * 
	 * @param skuQuery
	 *            查询条件
	 * @return
	 */
	public List<Sku> getSkuList(SkuQuery skuQuery);
	
	/**
	 * 库存大于>0
	 */
	public List<Sku> getStock(Integer productId);
	
}
